如何在一台电脑使用GitHub GitLab进行项目维护

1.生成SSH Key

1
2
3
在 C:\Users\用户名\.ssh 目录 鼠标右键 git bash 
ssh-keygen -t rsa -C "****@qq.com" //生成pub文件需指定生成文件名 id_rsa_hub/id_rsa_lab 区分GitHub/GitLab
ssh-keygen -t rsa -C "****@163.com"

2.配置Config

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
在 C:\Users\用户名\.ssh 目录 生成config文件 编辑如下:

# self(****@qq.com)
Host github(拉取代码时仓库的别名)
Port 22
User git
HostName github.com (github域名)
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_hub (生成的GitHub公钥)


# company(****@163.com)
Host gitlab(拉取代码时仓库的别名)
Port 端口(默认22)
User git
HostName ******* (公司GitLab域名)
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_lab(生成的GitLab公钥)


Host 作用[github为例]:


#传统使用
$git clone git@github.com:zhangChaoWrecked/pictures.git
$git remote add origin git@github.com:zhangChaoWrecked/pictures.git

#配置Config之后使用(host也可配置为域名即:github.com)
$git clone git@[Host]:zhangChaoWrecked/pictures.git
$git remote add origin git@[Host]:zhangChaoWrecked/pictures.git
生成文件如下图:

配置Hosts 加速 拉取代码速度
1
2
151.101.185.194    github.global.ssl.fastly.net
192.30.253.112 github.com

3.测试关联

1
2
ssh -T git@github
ssh -T git@gitlab

4.拉取远程代码或下载到本地

1
2
3
4
5
6
7
8
9
10
#取消全局 用户名/邮箱 配置(可跳过)
$git config --global --unset user.name
$git config --global --unset user.email

$cd 项目名
$git init
$git config --local user.name "用户名"
$git config --local user.email "邮箱"
$git remote add origin git@[host]:***/***.git(git remote rm origin 删除之前关联的origin)
$git pull orgin master